package cate.game.role.pvp.pointrace.msg;

import cate.game.client.msg.ClientMsg;
import cate.game.client.msg.MsgConfig;
import cate.game.client.msg.MsgOutput;
import easy.java.dev.note.NoteField;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;

import java.util.Map;

import static cate.common.table.d.GDPointRace.WHOLE_SEASON_MILLIS;
import static cate.game.client.msg.id.MsgIdBPointRace.LITE_DATA_RESP;

@AllArgsConstructor
@NoArgsConstructor
@ClientMsg(title = "简要信息 返回")
public class PointRaceLiteDataResp implements MsgOutput {

    @NoteField(value = "当前赛季开启时间")
    public long seasonStartTime;

    @NoteField(value = "当前赛季持续时间")
    @SuppressWarnings("unused")
    public final long wholeSeasonTime = WHOLE_SEASON_MILLIS;

    @NoteField(value = "今日挑战次数")
    public int challengeTimes;

    @NoteField(value = "本赛季挑战次数")
    public int seasonChallengeTimes;

    @NoteField(value = "赛季宝箱领取记录", detail = "<宝箱TID, 是否领取>")
    public Map<Integer, Boolean> rewardGot;

    @NoteField(value = "排名")
    public int rank;

    @Override
    public MsgConfig conf() {
        return LITE_DATA_RESP;
    }
}
